package com.jindy.module.oaContractApply.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jindy.activiti.domain.ProcessEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.jindy.common.annotation.Excel;
import com.jindy.common.core.domain.BaseEntity;

/**
 * 智能合同审批对象 sy_oa_contract
 * 
 * @author jindy
 * @date 2023-06-29
 */
public class SyOaContract extends ProcessEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增id */
    private Long id;

    /** 合同文件 */
    @Excel(name = "合同文件")
    private String contractFile;

    /** 合同名称 */
    @Excel(name = "合同名称")
    private String contractName;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String contractNumber;

    /** 金额类型 */
    @Excel(name = "金额类型")
    private String moneyType;

    /** 合同期限类型 */
    @Excel(name = "合同期限类型")
    private String contractDate;

    /** 合同说明 */
    @Excel(name = "合同说明")
    private String contractReason;

    /** 合同附件 */
    @Excel(name = "合同附件")
    private String contractAnnex;

    /** 我方信息id */
    @Excel(name = "我方信息id")
    private String contractWeId;

    /** 对方信息id */
    @Excel(name = "对方信息id")
    private String contractOtherId;

    /** 签署方式 */
    @Excel(name = "签署方式")
    private String signType;

    /** 签署日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "签署日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date signDate;

    /** 印章类型 */
    @Excel(name = "印章类型")
    private String sealType;

    /** 申请人id */
    @Excel(name = "申请人id")
    private String applyUserId;

    /** 申请人姓名 */
    @Excel(name = "申请人姓名")
    private String applyUserName;

    /** 申请时间
 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请时间 ", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyTime;

    /** 流程实例ID */
    @Excel(name = "流程实例ID")
    private String instanceId;

    /** 流程定义key */
    @Excel(name = "流程定义key")
    private String processKey;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 流水单号 */
    @Excel(name = "流水单号")
    private String serialNum;

    /** 审批状态 */
    @Excel(name = "审批状态")
    private String businessStatus;

    /** 我方合同信息列表 */
    private List<SyContractInfoWe> syContractInfoWeList;

    /** 对方合同信息列表 */
    private List<SyContractInfoOther> syContractInfoOtherList;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setContractFile(String contractFile) 
    {
        this.contractFile = contractFile;
    }

    public String getContractFile() 
    {
        return contractFile;
    }
    public void setContractName(String contractName) 
    {
        this.contractName = contractName;
    }

    public String getContractName() 
    {
        return contractName;
    }
    public void setContractNumber(String contractNumber) 
    {
        this.contractNumber = contractNumber;
    }

    public String getContractNumber() 
    {
        return contractNumber;
    }
    public void setMoneyType(String moneyType) 
    {
        this.moneyType = moneyType;
    }

    public String getMoneyType() 
    {
        return moneyType;
    }
    public void setContractDate(String contractDate) 
    {
        this.contractDate = contractDate;
    }

    public String getContractDate() 
    {
        return contractDate;
    }
    public void setContractReason(String contractReason) 
    {
        this.contractReason = contractReason;
    }

    public String getContractReason() 
    {
        return contractReason;
    }
    public void setContractAnnex(String contractAnnex) 
    {
        this.contractAnnex = contractAnnex;
    }

    public String getContractAnnex() 
    {
        return contractAnnex;
    }
    public void setContractWeId(String contractWeId) 
    {
        this.contractWeId = contractWeId;
    }

    public String getContractWeId() 
    {
        return contractWeId;
    }
    public void setContractOtherId(String contractOtherId) 
    {
        this.contractOtherId = contractOtherId;
    }

    public String getContractOtherId() 
    {
        return contractOtherId;
    }
    public void setSignType(String signType) 
    {
        this.signType = signType;
    }

    public String getSignType() 
    {
        return signType;
    }
    public void setSignDate(Date signDate) 
    {
        this.signDate = signDate;
    }

    public Date getSignDate() 
    {
        return signDate;
    }
    public void setSealType(String sealType) 
    {
        this.sealType = sealType;
    }

    public String getSealType() 
    {
        return sealType;
    }
    public void setApplyUserId(String applyUserId) 
    {
        this.applyUserId = applyUserId;
    }

    public String getApplyUserId() 
    {
        return applyUserId;
    }
    public void setApplyUserName(String applyUserName) 
    {
        this.applyUserName = applyUserName;
    }

    public String getApplyUserName() 
    {
        return applyUserName;
    }
    public void setApplyTime(Date applyTime) 
    {
        this.applyTime = applyTime;
    }

    public Date getApplyTime() 
    {
        return applyTime;
    }
    public void setInstanceId(String instanceId) 
    {
        this.instanceId = instanceId;
    }

    public String getInstanceId() 
    {
        return instanceId;
    }
    public void setProcessKey(String processKey) 
    {
        this.processKey = processKey;
    }

    public String getProcessKey() 
    {
        return processKey;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }
    public void setSerialNum(String serialNum) 
    {
        this.serialNum = serialNum;
    }

    public String getSerialNum() 
    {
        return serialNum;
    }
    public void setBusinessStatus(String businessStatus) 
    {
        this.businessStatus = businessStatus;
    }

    public String getBusinessStatus() 
    {
        return businessStatus;
    }

    public List<SyContractInfoWe> getSyContractInfoWeList() {
        return syContractInfoWeList;
    }

    public void setSyContractInfoWeList(List<SyContractInfoWe> syContractInfoWeList) {
        this.syContractInfoWeList = syContractInfoWeList;
    }

    public List<SyContractInfoOther> getSyContractInfoOtherList() {
        return syContractInfoOtherList;
    }

    public void setSyContractInfoOtherList(List<SyContractInfoOther> syContractInfoOtherList) {
        this.syContractInfoOtherList = syContractInfoOtherList;
    }

    @Override
    public String toString() {
        return "SyOaContract{" +
                "id=" + id +
                ", contractFile='" + contractFile + '\'' +
                ", contractName='" + contractName + '\'' +
                ", contractNumber='" + contractNumber + '\'' +
                ", moneyType='" + moneyType + '\'' +
                ", contractDate='" + contractDate + '\'' +
                ", contractReason='" + contractReason + '\'' +
                ", contractAnnex='" + contractAnnex + '\'' +
                ", contractWeId='" + contractWeId + '\'' +
                ", contractOtherId='" + contractOtherId + '\'' +
                ", signType='" + signType + '\'' +
                ", signDate=" + signDate +
                ", sealType='" + sealType + '\'' +
                ", applyUserId='" + applyUserId + '\'' +
                ", applyUserName='" + applyUserName + '\'' +
                ", applyTime=" + applyTime +
                ", instanceId='" + instanceId + '\'' +
                ", processKey='" + processKey + '\'' +
                ", delFlag='" + delFlag + '\'' +
                ", serialNum='" + serialNum + '\'' +
                ", businessStatus='" + businessStatus + '\'' +
                ", syContractInfoWeList=" + syContractInfoWeList +
                ", syContractInfoOtherList=" + syContractInfoOtherList +
                '}';
    }
}
